home *** CD-ROM | disk | FTP | other *** search
/ ASME's Mechanical Engine…ing Toolkit 1997 December / ASME's Mechanical Engineering Toolkit 1997 December.iso / intel / ppz8013a.lzh / MNEMTEST.ASM < prev    next >
Assembly Source File  |  1987-04-08  |  10KB  |  483 lines

  1.          .org 0               ;z80 mnemonics test
  2.          adc a,h'00
  3.          adc a,h'ff
  4.          adc a,a
  5.          adc a,b
  6.          adc a,c
  7.          adc a,d
  8.          adc a,e
  9.          adc a,h
  10.          adc a,l
  11.          adc a,(hl)
  12.          adc a,(ix+-128)
  13.          adc a,(iy+127)
  14.          adc hl,bc
  15.          adc hl,de
  16.          adc hl,hl
  17.          adc hl,sp
  18.          add a,h'00
  19.          add a,h'ff
  20.          add a,a
  21.          add a,l
  22.          add a,(hl)
  23.          add a,(ix+-128)
  24.          add a,(iy+127)
  25.          add hl,bc
  26.          add hl,de
  27.          add hl,hl
  28.          add hl,sp
  29.          add ix,bc
  30.          add ix,de
  31.          add ix,hl
  32.          add ix,sp
  33.          add iy,bc
  34.          add iy,de
  35.          add iy,hl
  36.          add iy,sp
  37.          and h'00
  38.          and h'ff
  39.          and a
  40.          and l
  41.          and (hl)
  42.          and (ix+-128)
  43.          and (iy+127)
  44.          bit 0,a
  45.          bit 0,l
  46.          bit 0,(hl)
  47.          bit 0,(ix+-128)
  48.          bit 0,(iy+127)
  49.          bit 7,a
  50.          bit 7,l
  51.          bit 7,(hl)
  52.          bit 7,(ix+-128)
  53.          bit 7,(iy+127)
  54.          call h'00
  55.          call h'ff
  56.          call longtest
  57.          call nz,h'00
  58.          call z,h'ff
  59.          call nc,longtest
  60.          call c,longtest
  61.          call po,h'00
  62.          call pe,1000
  63.          call p,128
  64.          call m,0
  65.          ccf
  66.          cp h'00
  67.          cp h'ff
  68.          cp a
  69.          cp l
  70.          cp (hl)
  71.          cp (ix+-128)
  72.          cp (iy+127)
  73.          cpd
  74.          cpdr
  75.          cpi
  76.          cpir
  77.          cpl
  78.          daa
  79.          dec a
  80.          dec l
  81.          dec (hl)
  82.          dec (ix+-128)
  83.          dec (iy+127)
  84.          dec bc
  85.          dec de
  86.          dec hl
  87.          dec sp
  88.          dec ix
  89.          dec iy
  90.          di
  91.          djnz rtest
  92.          ei
  93.          ex af,af'
  94.          ex de,hl
  95.          ex (sp),hl
  96.          ex (sp),ix
  97.          ex (sp),iy
  98.          exx
  99.          halt
  100.          im 0
  101.          im 1
  102.          im 2
  103.          in a,(h'00)
  104.          in a,(h'ff)
  105.          inc a
  106.          inc l
  107.          inc (hl)
  108.          inc (ix+-128)
  109.          inc (iy+127)
  110.          inc bc
  111.          inc de
  112.          inc hl
  113.          inc sp
  114.          inc ix
  115.          inc iy
  116.          ind
  117.          indr
  118.          ini
  119.          inir
  120.          in a,(c)
  121.          in c,(c)
  122.          in l,(c)
  123.          jp h'00
  124.          jp h'ff
  125.          jp longtest
  126.          jp nz,h'00
  127.          jp z,h'ff
  128.          jp nc,longtest
  129.          jp c,longtest
  130.          jp po,h'00
  131.          jp pe,1000
  132.          jp p,128
  133.          jp m,0
  134.          jp (hl)
  135.          jp (ix)
  136.          jp (iy)
  137.          jr c,rtest
  138. rtest:   jr rtest
  139.          djnz rtest
  140.          jr nc,rtest
  141.          jr nz,rtest
  142.          jr z,rtest
  143.          ld a,i
  144.          ld a,r
  145.          ld a,(longtest)
  146.          ld a,(h'00)
  147.          ld a,(h'ff)
  148.          ld a,(hl)
  149.          ld a,(bc)
  150.          ld a,(de)
  151.          ld a,l
  152.          ld l,a
  153.          ld l,h
  154.          ld hl,(h'00)
  155.          ld hl,(longtest)
  156.          ld bc,(h'00)
  157.          ld de,(longtest)
  158.          ld sp,(h'ff)
  159.          ld ix,(h'00)
  160.          ld iy,(h'ff)
  161.          ld ix,(longtest)
  162.          ld i,a
  163.          ld r,a
  164.          ld a,h'00
  165.          ld l,h'ff
  166.          ld bc,h'00
  167.          ld de,h'ff
  168.          ld sp,h'ff
  169.          ld hl,longtest
  170.          ld hl,1000
  171.          ld ix,1000
  172.          ld iy,longtest
  173.          ld a,(hl)
  174.          ld l,(hl)
  175.          ld a,(ix+127)
  176.          ld l,(iy+-128)
  177.          ld sp,hl
  178.          ld sp,ix
  179.          ld sp,iy
  180.          ld (1000),a
  181.          ld (longtest),a
  182.          ld (1000),hl
  183.          ld (longtest),hl
  184.          ld (1000),bc
  185.          ld (longtest),bc
  186.          ld (1000),de
  187.          ld (longtest),de
  188.          ld (1000),sp
  189.          ld (longtest),sp
  190.          ld (1000),ix
  191.          ld (longtest),iy
  192.          ld (hl),h'00
  193.          ld (hl),h'ff
  194.          ld (ix+127),h'00
  195.          ld (ix+-128),h'ff
  196.          ld (hl),a
  197.          ld (hl),l
  198.          ld (ix+127),a
  199.          ld (iy+-128),l
  200.          ld (bc),a
  201.          ld (de),a
  202.          ld (hl),a
  203.          ldd
  204.          lddr
  205.          ldi
  206.          ldir
  207.          neg
  208.          nop
  209.          or h'00
  210.          or h'ff
  211.          or a
  212.          or l
  213.          or (hl)
  214.          or (ix+-128)
  215.          or (iy+127)
  216.          out (c),a
  217.          out (c),l
  218.          outd
  219.          otdr
  220.          outi
  221.          otir
  222.          out (h'00),a
  223.          out (h'ff),a
  224.          pop bc
  225.          pop de
  226.          pop hl
  227.          pop af
  228.          pop ix
  229.          pop iy
  230.          push bc
  231.          push de
  232.          push hl
  233.          push af
  234.          push ix
  235.          push iy
  236.          res 0,a
  237.          res 0,l
  238.          res 0,(hl)
  239.          res 0,(ix+-128)
  240.          res 0,(iy+127)
  241.          res 7,a
  242.          res 7,l
  243.          res 7,(hl)
  244.          res 7,(ix+-128)
  245.          res 7,(iy+127)
  246.          ret
  247.          ret nz
  248.          ret z
  249.          ret nc
  250.          ret c
  251.          ret po
  252.          ret pe
  253.          ret p
  254.          ret m
  255.          reti
  256.          retn
  257.          rl a
  258.          rl l
  259.          rl (hl)
  260.          rl (ix+-128)
  261.          rl (iy+127)
  262.          rla
  263.          rlc a
  264.          rlc l
  265.          rlc (hl)
  266.          rlc (ix+-128)
  267.          rlc (iy+127)
  268.          rlca
  269.          rld
  270.          rr a
  271.          rr l
  272.          rr (hl)
  273.          rr (ix+-128)
  274.          rr (iy+127)
  275.          rra
  276.          rrc a
  277.          rrc l
  278.          rrc (hl)
  279.          rrc (ix+-128)
  280.          rrc (iy+127)
  281.          rrca
  282.          rrd
  283.          rst h'00
  284.          rst h'20
  285.          rst h'38
  286.          sbc a,h'00
  287.          sbc a,h'ff
  288.          sbc a,a
  289.          sbc a,l
  290.          sbc a,(hl)
  291.          sbc a,(ix+-128)
  292.          sbc a,(iy+127)
  293.          sbc hl,bc
  294.          sbc hl,de
  295.          sbc hl,hl
  296.          sbc hl,sp
  297.          scf
  298.          set 0,a
  299.          set 0,l
  300.          set 0,(hl)
  301.          set 0,(ix+-128)
  302.          set 0,(iy+127)
  303.          set 7,a
  304.          set 7,l
  305.          set 7,(hl)
  306.          set 7,(ix+-128)
  307.          set 7,(iy+127)
  308.          sla a
  309.          sla l
  310.          sla (hl)
  311.          sla (ix+-128)
  312.          sla (iy+127)
  313.          sra a
  314.          sra l
  315.          sra (hl)
  316.          sra (ix+-128)
  317.          sra (iy+127)
  318.          srl a
  319.          srl l
  320.          srl (hl)
  321.          srl (ix+-128)
  322.          srl (iy+127)
  323.          sub h'00
  324.          sub h'ff
  325.          sub a
  326.          sub l
  327.          sub (hl)
  328.          sub (ix+-128)
  329.          sub (iy+127)
  330.          xor h'00
  331.          xor h'ff
  332.          xor a
  333.          xor l
  334.          xor (hl)
  335.          xor (ix+-128)
  336.          xor (iy+127)
  337.  
  338. synctst1:
  339.          adc a,forward2
  340.          adc a,forward1
  341.          adc a,(ix+forward3)
  342.          adc a,(iy+forward4)
  343.          add a,forward2
  344.          add a,forward1
  345.          add a,(ix+forward3)
  346.          add a,(iy+forward4)
  347.          and forward2
  348.          and forward1
  349.          and (ix+forward3)
  350.          and (iy+forward4)
  351.          bit bit0,a
  352.          bit bit0,l
  353.          bit bit0,(hl)
  354.          bit bit0,(ix+forward3)
  355.          bit bit0,(iy+forward4)
  356.          bit bit7,a
  357.          bit bit7,l
  358.          bit bit7,(hl)
  359.          bit bit7,(ix+forward3)
  360.          bit bit7,(iy+forward4)
  361.          call forward2
  362.          call forward1
  363.          call longtest
  364.          call nz,forward2
  365.          call z,forward1
  366.          call nc,longtest
  367.          call c,longtest
  368.          call po,forward2
  369.          call pe,1000
  370.          call p,128
  371.          call m,0
  372.          cp forward2
  373.          cp forward1
  374.          cp (ix+forward3)
  375.          cp (iy+forward4)
  376.          dec (ix+forward3)
  377.          dec (iy+forward4)
  378.          in a,(forward2)
  379.          in a,(forward1)
  380.          inc (ix+forward3)
  381.          inc (iy+forward4)
  382.          jp forward2
  383.          jp forward1
  384.          jp longtest
  385.          jp nz,forward2
  386.          jp z,forward1
  387.          jp nc,longtest
  388.          jp c,longtest
  389.          jp po,forward2
  390.          jp pe,1000
  391.          jp p,128
  392.          jp m,0
  393.          ld a,(longtest)
  394.          ld a,(forward2)
  395.          ld a,(forward1)
  396.          ld ix,(forward2)
  397.          ld iy,(forward1)
  398.          ld ix,(longtest)
  399.          ld a,forward2
  400.          ld bc,forward2
  401.          ld sp,forward1
  402.          ld hl,longtest
  403.          ld hl,1000
  404.          ld ix,1000
  405.          ld iy,longtest
  406.          ld a,(ix+forward4)
  407.          ld l,(iy+forward3)
  408.          ld (1000),a
  409.          ld (longtest),a
  410.          ld (1000),hl
  411.          ld (longtest),hl
  412.          ld (1000),bc
  413.          ld (longtest),bc
  414.          ld (1000),ix
  415.          ld (longtest),iy
  416.          ld (hl),forward2
  417.          ld (hl),forward1
  418.          ld (ix+forward4),forward2
  419.          ld (ix+forward3),forward1
  420.          ld (ix+forward4),a
  421.          ld (iy+forward3),l
  422.          or forward2
  423.          or forward1
  424.          or (ix+forward3)
  425.          or (iy+forward4)
  426.          out (forward2),a
  427.          out (forward1),a
  428.          res bit0,a
  429.          res bit0,l
  430.          res bit0,(hl)
  431.          res bit0,(ix+forward3)
  432.          res bit0,(iy+forward4)
  433.          res bit7,a
  434.          res bit7,l
  435.          res bit7,(hl)
  436.          res bit7,(ix+forward3)
  437.          res bit7,(iy+forward4)
  438.          rl (ix+forward3)
  439.          rl (iy+forward4)
  440.          rlc (ix+forward3)
  441.          rlc (iy+forward4)
  442.          rr (ix+forward3)
  443.          rr (iy+forward4)
  444.          rrc (ix+forward3)
  445.          rrc (iy+forward4)
  446.          sbc a,forward2
  447.          sbc a,forward1
  448.          sbc a,(ix+forward3)
  449.          sbc a,(iy+forward4)
  450.          set bit0,a
  451.          set bit0,l
  452.          set bit0,(hl)
  453.          set bit0,(ix+forward3)
  454.          set bit0,(iy+forward4)
  455.          set bit7,a
  456.          set bit7,l
  457.          set bit7,(hl)
  458.          set bit7,(ix+forward3)
  459.          set bit7,(iy+forward4)
  460.          sla (ix+forward3)
  461.          sla (iy+forward4)
  462.          sra (ix+forward3)
  463.          sra (iy+forward4)
  464.          srl (ix+forward3)
  465.          srl (iy+forward4)
  466.          sub forward2
  467.          sub forward1
  468.          sub (ix+forward3)
  469.          sub (iy+forward4)
  470.          xor forward2
  471.          xor forward1
  472.          xor (ix+forward3)
  473.          xor (iy+forward4)
  474.  
  475. synctst2:
  476. longtest:.equ forward1,h'ff
  477.          .equ forward2,h'00
  478.          .equ forward3,-128
  479.          .equ forward4,127
  480.          .equ bit0,0
  481.          .equ bit7,7
  482.          .end
  483.